package com.estore.service;

import com.estore.model.Product;

import java.util.Comparator;

/**
 * 商品比较器类，提供多种商品排序规则
 */
public class ProductSorters {

    // 按商品价格从低到高排序
    public static final Comparator<Product> BY_PRICE_ASC = Comparator.comparingDouble(Product::getPrice);

    // 按商品价格从高到低排序（通过 reversed() 方法反转升序排序）
    public static final Comparator<Product> BY_PRICE_DESC = BY_PRICE_ASC.reversed();

    // 按商品库存从多到少排序（通过 reversed() 方法反转升序排序）
    public static final Comparator<Product> BY_STOCK_DESC = Comparator.comparingInt(Product::getStock).reversed();
}
